from socket import *

# 1. 创建套接字，默认参数就是socket.AF_INET, socket.SOCK_STREAM，可以省略
sk = socket(AF_INET, SOCK_STREAM)

# 设置端口立即重用，重启后自动重用
sk.setsockopt(SOL_SOCKET, SO_REUSEADDR, 1)
# 2. 绑定地址
server_addr = ('127.0.0.1', 8080)
sk.bind(server_addr)

# 3. 设置监听
sk.listen(3)

# 4. 处理客户端链接
conn, addr = sk.accept()


print('套接字类型', sk.type)
print('套接字地址类型', sk.family)
print('绑定地址', sk.getsockname())
print('文件描述符', sk.fileno())
print('客户端地址', conn.getpeername())

# 5. 收发消息
res = conn.recv(1024)
print(res.decode())
# 发送消息
conn.send(b'Success!\r')

# 6.关闭
conn.close()
sk.close()

# 1.运行程序，进入待机状态
# 2.使用cmd，输入 telnet 127.0.0.1 8080
# 3.cmd输入任意字符，查看cmd是否收到消息
# 4.查看程序运行日志是否收到cmd发来的消息
